草庐IT

simplexml - PHP simplexml 实体

全部标签

php - 如何扩展 ZF2 骨架应用程序 - 带外键的实体

根据Zend用户指南,我的ZF2骨架应用程序运行良好。但现在我在兜圈子,试图扩展应用程序,以便专辑的艺术家不再是字符串,而是数据库中艺术家表的外键。我已经创建了所有必要的模型、Controller、View来创建、编辑和查看艺术家,它们也工作正常。但我如何将两者结合起来,以便我的专辑列表显示艺术家的名字?我是否使用保湿策略assuggestedhere?如果是这样,我该如何实现?Zend\Stdlib\Hydrator\Strategy手册没有告诉我在哪里注册hydrator策略。是的,有一个简短的实现代码:$foo=newFoo();$foo->setFoo("bar");$foo-

php - 在 phpunittest 中访问实体管理器

我在symfony中有以下单元测试代码:kernel->getContainer()->get('doctrine.orm.entity_manager');$query=$em->createQueryBuilder();$query->select('c')->from("ShopiousUserBundle:City",'c');$result=$query->getQuery()->getResult();var_dump($result);}}我试图在这里访问实体管理器,但是它总是给我这个错误:Undefinedproperty:Acme\MainBundle\Tests\S

php - simplexml_load_file 仅在实时网站上不起作用

我最近将我的网站上线,发现simplexml_load_file问题。它可以在本地服务器(MAMP)上完美运行,但不能在网站上运行。代码如下:Result;?>上面的代码在实时网站上显示以下消息:“Somethingiswrong并且相同的代码在本地服务器MAMP上显示以下消息:Success而file.xml是:johnSuccess提前致谢。 最佳答案 听起来您的托管服务提供商禁用了PHP将URL作为文件打开的功能。在您的服务器上运行以下代码片段。如果结果是“0”,那么这个特征已被禁用。如果禁用它,您可能需要先使用CURL之类的

php - Symfony2 从具有多对多关系的倒置实体中获取对象

我的Doctrine实体关系存在问题。事情是这样的:我有2个实体:文章和类别文章为主,类别为从我想从文章中获取类别,或者从类别中获取文章。我创建了一个ManyToMany关系:classArticle{/***@ORM\ManyToMany(targetEntity="Alpha\BlogBundle\Entity\Category",cascade={"persist"},inversedBy="Article")*@ORM\JoinTable(name="article_category")*/private$categories;和publicfunction__construc

php - PHP 类 SimpleXML 中的 'getElement(s)By' 就像在 PHP-DomDocument 中一样?

我使用DomDocument和SimpleXML创建了一个应用程序,但服务器不支持DomDocument(仅SimpleXML)。现在我正在重写它,但SimpleXML中没有任何函数,如“getElementsByTagName”和“getElementById”(我只需要这2个)。我在php.net和google.com上搜索了很多,但找不到。我自己写的不太好。那么,有人知道我的替代/功能/提示/脚本吗?:)提前致谢。 最佳答案 幸运的是,如果SimpleXML不支持那些DOM方法,它支持XPath,使用SimpleXMLElem

php - DOMDocument 和 HTML 实体

我正在尝试解析一些包含一些HTML实体的HTML,例如×$str='A×B';$dom=newDomDocument;$dom->substituteEntities=false;$dom->loadHTML($str);$link=$dom->getElementsByTagName('a')->item(0);$fullname=$link->nodeValue;$href=$link->getAttribute('href');echo"fullname:$fullname\nhref:$href\n";但是DomDocument将文本替换为A×B。有什么方法可以防止它

php - 如何检查 simplexml 对象的值

我有一个简单的xml对象数组。我正在写下面的代码Array([ID]=>1992109[Title]=>AEquipadoMAIS[Description]=>SimpleXMLElementObject())现在我如何检查此数组中Description的值是否存在Description的值。 最佳答案 要验证SimpleXMLElement对象是否具有文本值,您需要将其转换为字符串:$desc=(string)$array['Description'];if(!empty($desc)){echo$desc;}尽管您可以直接ech

PHP 的 SimpleXML 不保持不同元素类型之间的顺序

据我所知,当您在XML文档树中的同一级别具有多种类型的元素时,PHP的SimpleXML,包括SimpleXMLElement和SimpleXMLIterator都不会保持元素的顺序,因为它们彼此相关,仅在每个元素内。例如,考虑以下结构:HarryPotterandtheChamberofSecretsJ.K.RowlingGreatExpectationsCharlesDickens如果我有这个结构并使用SimpleXMLIterator或SimpleXMLElement来解析它,我最终会得到一个看起来像这样的数组:Array([book]=>Array([0]=>Array([ti

php - SimpleXML 如何获取节点的行号?

我在SimpleXML和PHP中使用它:foreach($xml->children()as$node){echo$node->attributes('namespace')->id;}打印所有节点的id属性(使用命名空间)。但是现在我想知道$node在XML文件中的行号。我需要行号,因为我正在分析XML文件,并向用户返回可能出现问题的信息以解决这些问题。所以我需要说类似的话:“这里你在第X行有一个错误”。我确信XML文件将采用标准格式,其中包含足够多的换行符以供使用。 最佳答案 使用DOM是可能的。DOMNode提供函数getLi

PHP:使用 simplexml 遍历 XML 文件的所有级别

我有一个函数,它使用simplexml返回XML文件中的第一级节点并将其写入无序列表:functionprintAssetMap(){$xml=simplexml_load_file(X_ASSETS);$assets=$xml->asset;$html=''."\n";foreach($assetsas$asset){$html.='asset_assetid.'"> '.$asset->asset_name.'['.$asset->asset_assetid.']'."\n";}//endforeach$html.=''."\n";return$html;}//print